Pipe Network - General Rules
This section outlines rules for using ML function A function calculates a result according to the current value of its inputs. A function has no internal data and is not linked to declared instances. in the Pipe Network context.
Languages
Functions that interact with the Pipe Network start with ML (e.g., MLAxisRel, MLPrfWriteOScale, or MLMstRel).
These functions can be used in all the Programming Languages.
BlockID Inputs
The BlockID input is a DINT ID.
It is the second input to a Pipe Network function when using the FFLD Language:
The BlockID input is the first one if programming in the ST Structured text - A high-level language that is block structured and syntactically resembles Pascal. Language:
MLGearRatSlp( BlockID (*DINT*) );
This input identifies the block in the Pipe Network the function interacts with.
If using the graphical Pipe Network Editor, the used variable starts with PipeNetwork.xxx.
The exception is if it is acting on a CAM profile The position of a slave axis is mathematically linked to the position of a master axis. Example: A system where two rotating drums turn at a given ratio to each other. A more advanced case of electronic gearing is electronic camming. With electronic camming, a slave axis follows a profile that is a function of the master position. This profile need not be linear but it must be a mathematical function., then the input is named ProfileID and the variable starts with Profiles.xxx.
-
-
When selecting a Pipe Block as the BlockID for an ML function, choose a Pipe Block with the same type which is in the name of the ML function.
Example: MLMstxxx functions expect a Master block to be chosen for the BlockID.
MLAxisxxx functions need an Axis block to be chosen for the AxisID input and MLPrfxxx functions need a Profile entered for ProfileID, etc.
Output Status
Most Pipe Network functions have a default Boolean output labeled either Q or OK:
What is the Difference between Q and OK?
- OK returns True when the function successfully executes.
- Q output is initially set to 0 (zero) until the first time the block is successfully executed in a running program.
- After this execution, the Q output is set to 1.
- It remains to 1 until the function does NOT execute successfully.
- Alternately, after an unsuccessful execution the Q output is set to 0 (zero).
- It remains to 0 (zero) until a successful execution resumes.
Figure 1: Execution Not Successful
When Q is Set to TRUE
Verify the description for each individual function block A function block groups an algorithm and a set of private data. It has inputs and outputs. to be sure how its Q output is behaving.
- Some functions change the Q output from low to high immediately after it starts executing.
- Others (including most functions that command motion) wait to change the output until the function has completely finished executing.
Input Parameters
- The En input parameter, which is used to execute the function, is not edge-triggered.
- If a function is seen in the PLC Programmable Logic Controller - A digital computer used for automation of industrial processes, such as control of machinery on factory assembly lines. Used to synchronize the flow of inputs from (physical) sensors and events with the flow of outputs to actuators and events. code and its En input is positive Position means a point in space which is described by different coordinates. Depending on the used system and transformation it can consist of a maximum of six dimensions (coordinates).This means three Cartesian coordinates in space and coordinates for the orientation. In ACS there can be even more than six coordinates. If the same position is described in different coordinate systems the values of the coordinates are different., the function executes.
- Example: A MLAxisRel command continuously executes relative moves in a program if it is called each program cycle; thus it acts as a Run/Jog command if continually commanded.
Missing Input Parameters
All inputs to a function must be entered for code to compile.
Position versus Distance
- Position is a value defined in a coordinate system The reference system in which a coordinate or path is described..
- DeltaPosition is a relative measure related to technical units.
- It is the difference between two positions.
Default Block Parameters
The parameters set when initializing a Pipe Network block are used as defaults when calling functions.
- These parameters can be modified in a program by using specific functions to set these values.
- If a value is never set in a program the parameter entered during initialization is used.
- Example: When making a Master relative move (MLMstRel) you input the DeltaPosition but not the velocity For a group of axes this means: In ACS the velocities of the different axes. In MCS and PCS it provides the velocity of the TCP or acceleration A change in velocity over time.
Because velocity is a vector, it can change in two ways: a change in magnitude and/or a change in direction.
In one dimension, acceleration is the rate at which something speeds up or slows down.
However, more generally, acceleration is a vector quantity expressing the change with time of the velocity both in magnitude and in direction.
See these Wikipedia articles for more information:
http://en.wikipedia.org/wiki/Velocity
http://en.wikipedia.org/wiki/Euclidean_vector
http://en.wikipedia.org/wiki/Rate_(mathematics).
You can set the velocity for the move by using the MLMstWriteSpeed function before calling the relative move.
If the speed Speed is the absolute value of the velocity without direction. is not set in the program, the default parameter entered during the initialization (i.e., in the properties dialog box of the Pipe Blocks) is used.